<!DOCTYPE HTML>
<html lang="zh">
<head>
<title>转义序列 - Definition &amp; Usage | AutoHotkey</title>
<meta name="description" content="Escape sequences are used to indicate that specific characters should be interpreted differently than they normally would." />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link href="../static/theme.css" rel="stylesheet" type="text/css" />
<script src="../static/content.js" type="text/javascript"></script>
</head>
<body>

<h1>转义序列</h1>
<p>转义字符 <code>`</code>(反单引号或重音符) 用来表明在紧跟其后的字符不能像平常那样进行解释. 该字符位于大多数英式键盘的左上角.</p>
<p>在 AutoHotkey 中, 可以使用以下转义序列(当重音是转义符时):</p>
<table class="info">
  <tr>
    <th style="width:40px" abbr="Seq">序列</th>
    <th>结果</th>
  </tr>
  <tr>
    <td><code>`,</code></td>
    <td>
      <p><code>,</code>(原义的逗号)</p>
      <p class="note"><strong>注意:</strong> 在命令最后一个参数中的逗号不需要转义, 因为程序知道把它们作为原义处理(但为了清楚起见, 最好还是转义他们). 对于 <a href="../lib/MsgBox.htm">MsgBox</a> 的所有参数同样如此, 因为会智能的处理逗号.</p>
    </td>
  </tr>
  <tr>
    <td><code>`%</code></td>
    <td><code>%</code>(原义的百分号)</td>
  </tr>
  <tr>
    <td><code>``</code></td>
    <td><code>`</code>(原义的重音符; 即两个连续的转义符产生单个原义字符)</td>
  </tr>
  <tr>
    <td><code>`;</code></td>
    <td>
      <p><code class="no-highlight">;</code>(原义的分号)</p>
      <p class="note"><strong>注意:</strong> 当分号的左边有任何字符时(空格或制表符 <u>除外</u>) , 没有必要进行转义, 因为它不会被解释为注释.</p>
    </td>
  </tr>
  <tr>
    <td><code>`::</code></td>
    <td><code>::</code>(原义的双冒号). <span class="ver">[v1.0.40+]</span>: 不再需要对它们进行转义, 除了在<a href="../Hotstrings.htm">热字串</a>的替换文本中使用其原义.</td>
  </tr>
  <tr>
    <td><code>`n</code></td>
    <td>新行(换行/LF)</td>
  </tr>
  <tr>
    <td><code>`r</code></td>
    <td>回车(CR)</td>
  </tr>
  <tr>
    <td><code>`b</code></td>
    <td>退格</td>
  </tr>
  <tr>
    <td><code>`t</code></td>
    <td>tab(最典型的水平移位)</td>
  </tr>
  <tr>
    <td><code>`v</code></td>
    <td>垂直 tab -- 对应的 Ascii 值为 11. 在一些应用程序中可以通过键入 <kbd>Ctrl</kbd>+<kbd>K</kbd> 让它显示出来.</td>
  </tr>
  <tr>
    <td><code>`a</code></td>
    <td>警告(铃) -- 对应的 Ascii 值为 7. 在一些应用程序中可以通过键入 <kbd>Ctrl</kbd>+<kbd>G</kbd> 让它显示出来.</td>
  </tr>
  <tr>
    <td><code>`f</code></td>
    <td>进纸 -- 对应的 Ascii 值为 12. 在一些应用程序中可以通过键入 <kbd>Ctrl</kbd>+<kbd>L</kbd> 让它显示出来.</td>
  </tr>
  <tr>
    <td><code class="no-highlight">""</code></td>
    <td>在<a href="../Variables.htm#Expressions">表达式</a>中, 原义字符串内的两个连续的引号被解析为单个原义的引号. 例如: <code>Var := "The color ""red"" was found."</code>.</td>
  </tr>
</table>

<h2 id="Remarks">备注</h2>
<p>当 <a href="../lib/Send.htm">Send 命令</a>或<a href="../Hotstrings.htm">热字串</a>在其默认(非-raw) 模式下使用时, 诸如 <code>{}^!+#</code> 等字符具有特殊意义. 因此, 在这些情况下, 要按原义使用它们, 请将它们用括号括起来. 例如: <code>Send {<strong>^</strong>}{<strong>!</strong>}{<strong>{</strong>}</code>.</p>

<h2 id="Examples">示例</h2>
<div class="ex" id="ExBasic">
<p><a class="ex_number" href="#ExBasic"></a> 报告一个多行字符串. 各行之间用换行符隔开.</p>
<pre>MsgBox % "Line 1`nLine 2"</pre>
</div>

</body>
</html>